#pragma once
#include "AnyEditor.h"
#include "AnyView.h"

//////////////////////////////////////////////////////////////////////////
// Pan
class CCameraEditorPan :
	public TZoomWithWheel<CShareEditorBase>
{
public:
	CCameraEditorPan(void);
	~CCameraEditorPan(void);
	static CString GetID();
	virtual EditorState OnLButtonDown(UINT nFlags, long x, long y);
	virtual void OnMouseMove(UINT nFlags, long x, long y);
private:
	long m_nX;
	long m_nY;
};

//////////////////////////////////////////////////////////////////////////
// Rotation
class CCameraEditorRotate :
	public TZoomWithWheel<CShareEditorBase>
{
public:
	CCameraEditorRotate(void);
	~CCameraEditorRotate(void);
	static CString GetID();
	virtual EditorState OnLButtonDown(UINT nFlags, long x, long y);
	virtual void OnMouseMove(UINT nFlags, long x, long y);
};

//////////////////////////////////////////////////////////////////////////
// Zoom

class CCameraEditorZoom :
	public TZoomWithWheel<CShareEditorBase>
{	
public:
	CCameraEditorZoom(void);
	~CCameraEditorZoom(void);
	static CString GetID();
	virtual EditorState OnLButtonDown(UINT nFlags, long x, long y);
	virtual void OnMouseMove(UINT nFlags, long x, long y);
private:
	long m_nX;
	long m_nY;
};

